package com.yf.zzmusic.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yf.zzmusic.common.PageInfo;
import com.yf.zzmusic.pojo.dto.sysDictData.SysDictDataPageDTO;
import com.yf.zzmusic.pojo.entity.SysDictData;
import com.yf.zzmusic.mapper.SysDictDataMapper;
import com.yf.zzmusic.pojo.entity.User;
import com.yf.zzmusic.service.ISysDictDataService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * <p>
 * 字典表，根据type进行 服务实现类
 * </p>
 *
 * @author
 * @since 2024-02-28
 */
@Service
public class SysDictDataServiceImpl extends ServiceImpl<SysDictDataMapper, SysDictData> implements ISysDictDataService {


  @Override
  public PageInfo<SysDictData> sysDictDataByPage(SysDictDataPageDTO sysDictDataPageDTO) {
    QueryWrapper<SysDictData> queryWrapper = new QueryWrapper<>();
    Integer pageNum = sysDictDataPageDTO.getPageNum();
    Integer pageSize = sysDictDataPageDTO.getPageSize();
    String dictType = sysDictDataPageDTO.getDictType();
    if(pageNum==null){
      pageNum=0;
    }
    if(pageSize==null){
      pageSize=1000;
    }
    if (!StringUtils.isEmpty(dictType)) {
      queryWrapper.like("dict_type", dictType);
    }
    Page<SysDictData> userPage = page(new Page<>(pageNum, pageSize), queryWrapper);
    PageInfo<SysDictData> pageInfo=new PageInfo<>();
    pageInfo.setPageNum(pageNum);
    pageInfo.setPageSize(pageSize);
    pageInfo.setTotal(userPage.getTotal());
    pageInfo.setData(userPage.getRecords());
    return pageInfo;
  }
}
